Матрици
- въвеждане,  представяне, преобразуване, детерминанти, обратни матрици, собствени стойности, системи уравнения и други.
Използване на палета File/Palettes/Basic Calculations/ List and Matrices

Пример 1. Матриците в Mathematica се въвеждат по два начина - стандартен като двумерни списъци и таблици или чрез математическа символика чрез избор от палет. Следва списък на матрица  a=3 x 5

a = {{0, 2, 3, 1, 9}, {-2, 1, 0, 0, 3}, {12, 4, 0, -9, 2}} MatrixForm[%]

{{0, 2, 3, 1, 9}, {-2, 1, 0, 0, 3}, {12, 4, 0, -9, 2}}

( 0    2    3    1    9  )            -2   1    0    0    3            12   4    0    -9   2

Следващата матрица  b  е въведена като се избере символът (   )       от палета с основни символи. Ред се добавя като поставим курсора върху дадена клетка и натиснем едновременно клавишите  CTRL и ENTER. Колона се добавя като натиснем едновременно клавишите  CTRL и  , (запетая).

b = (1   0   0   2   3)       1   2   0   3   5       3   8   3   1   6

{{1, 0, 0, 2, 3}, {1, 2, 0, 3, 5}, {3, 8, 3, 1, 6}}

Пример 2. Действия между матрици са възможни според правилата от линейната алгебра -събиране, умножение и т.н. Ето сума и  умножение с число.

c = 5a ;  MatrixForm[%] d = 4a - 10b ;  MatrixForm[%]

( 0     10    15    5     45  )            -10   5     0     0     15            60    20    0     -45   10

( -10   8     12    -16   6   )            -18   -16   0     -30   -38            18    -64   -30   -46   -52

Пример 3.  Умножаването на матрици става чрез символ . (точка).

a1 = (2    0 ) ;        1    -2        9    1 b1 = (1    2    -2   0 ) ;        3    4    0    1 c1 = a1 . b1 ; MatrixForm[%]

( 2     4     -4    0   )            -5    -6    -2    -2            12    22    -18   1

Пример 4.   Да се изчисли  (p+q). (p-q). За да сравните резултатите сме пресметнали и междинни резултати.

p = (1   2) ;       0   3 q = (0   2) ;       1   0 p + q ; MatrixForm[%] p - q ; MatrixForm[%] (p + q) . (p - q) ; MatrixForm[%]

( 1   4 )            1   3

( 1    0  )            -1   3

( -3   12 )            -2   9

Пример 5.   Детерминанти, транспониране, повдигане в степен. Забележете, че действието a^3 означава повдигане в третата степен на всеки елемент на матрицата, а действието  a.a.a е трикратно умножение на матрицата а.

a = (2   3   0) ;       0   1   4       1   2   5 determinanta = Det[a] Transpose[a] ; MatrixForm[%] MatrixPower[a, 3] a . a . a a^3 MatrixForm[%]

6

( 2   0   1 )            3   1   2            0   4   5

{{20, 45, 96}, {32, 69, 156}, {47, 102, 225}}

{{20, 45, 96}, {32, 69, 156}, {47, 102, 225}}

{{8, 27, 0}, {0, 1, 64}, {1, 8, 125}}

( 8     27    0   )            0     1     64            1     8     125

Пример 6.  Обръщане на матрица и проверка на резултата чрез умножение на  а  отляво и отдясно с обратната матрица, за да се получи единична матрица.

r=Inverse[a]
MatrixForm[%]
a.r
r.a

{{-1/2, -5/2, 2}, {2/3, 5/3, -4/3}, {-1/6, -1/6, 1/3}}

(  1    5      )           --   --            2    2   2            2    5     ...  -    --           3    3     3             1    1   1           --   --   -            6    6   3

{{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}

{{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}

Пример 7. Намирането на ранг на матрица по метода на елиминирането с Гаус-Жордан става с функцията  RowReduce.

a = (2    3    7 ) ;       2    3    7       12   3    7       4    3    7 RowReduce[a] ; MatrixForm[%]

(           )            1   0   0                    7                   -           0   1   3              0   0   0              0   0   0

Пример 8.  Изчисляването на собствени стойности и собствени вектори на квадратни матрици може да се получи, ако е възможно аналитично решаване на характеристичното уравнение. В останалите случаи се използва числен метод (виж съответните интерактивни уроци).

b=.
b={{3,1},{4,0}}
Eigenvalues[b]
Eigenvectors[b]
c={{1,0,-3},{4,0,-2},{2,-2,3}}
Eigenvalues[c]
Eigenvectors[c]

{{3, 1}, {4, 0}}

{4, -1}

{{1, 1}, {-1, 4}}

{{1, 0, -3}, {4, 0, -2}, {2, -2, 3}}

{4,  5^(1/2), - 5^(1/2)}

{{-2, -3, 2}, {1/2 + ( 5^(1/2))/2, 2, 1}, {1/2 - ( 5^(1/2))/2, 2, 1}}

Пример 9. Решаване на системи линейни уравнения с неособена матрица Ax=b. Това е възможно по два начина - чрез директно намиране на обратната матрица, т.е. x=A^(-1) b   или чрез функцията  LinearSolve[  ] .

A = (1       4       -4      0.4     1.6  ) ;       0.02    3.5     13      13.04   -44        ... 4;атрица *) ; MatrixForm[%] x1 = r . b x2 = LinearSolve[A, b]

345305.

RowBox[{{, RowBox[{RowBox[{{, RowBox[{0.0279732, ,, 0.00504037, ,, 0.00460558, ,, RowBox[{-, 0 ... 0.0214666}], ,, RowBox[{-, 0.00892012}], ,, 0.00968367, ,, 0.0594927, ,, 0.000474677}], }}]}], }}]

( 0.9999999999999999`         -1.9081958235744878`*^-17   2.6020852139652106`*^-17     ... 3`*^-16    -5.4969050145015075`*^-17   -1.0408340855860843`*^-17   4.2500725161431774`*^-16    1.`

RowBox[{{, RowBox[{RowBox[{{, 0.151366, }}], ,, RowBox[{{, RowBox[{-, 0.582198}], }}], ,, RowBox[{{, RowBox[{-, 0.89788}], }}], ,, RowBox[{{, 0.866033, }}], ,, RowBox[{{, 0.149681, }}]}], }}]

RowBox[{{, RowBox[{RowBox[{{, 0.151366, }}], ,, RowBox[{{, RowBox[{-, 0.582198}], }}], ,, RowBox[{{, RowBox[{-, 0.89788}], }}], ,, RowBox[{{, 0.866033, }}], ,, RowBox[{{, 0.149681, }}]}], }}]


Created by Mathematica  (December 29, 2007)